
void main() {
  specifiedOperator();
}

void specifiedOperator() {
  /* 地板除 向下取整 */
  const floorClear = 7 ~/ 4;
  print("地板除 ->$floorClear");

  /* 类型判断 */
  const list = [];
  const isList = list is List;
  print("类型判断1 ->$isList");

  /* 避空处理 */
  const val = null ?? 100;
  print("val -> $val");
  var valA = null;
  valA ??= 10; /* 为空时赋值10 */
  print("valA ??= 10 -> $valA");
  valA ??= 34;
  print("valA ??= 34 -> $valA");

  /* 条件属性访问 */
  var empty;
  var isEmptyProp = empty?.length;
  print("empty?.length -> $isEmptyProp");

  /* 级联属性访问 链式支持 */
  Set set = new Set();
  set
    ..add(100)
    ..add(true)
    ..add(false)
    ..add("100")
    ..add(3.45);
  print("set -> $set");

}